using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SysFrame.Message;
using System.Reflection;
using System.Data;
using MySql.Data.MySqlClient;

namespace SysFrame.BP
{
    /// <summary>
    /// system_16方法
    /// </summary>
    public class MySQLsystem_16: Isystem_16
    {

        /// <summary>
        /// 得到system_16实体
        /// </summary>
        /// <param name="msq">条件</param>
        /// <returns></returns>
        public List<Mssystem_16> Getsystem_16MsByQuery(MsQuery msq)
        {
            List<Mssystem_16> listms=new List<Mssystem_16>();
            StringBuilder sb = new StringBuilder();
            List<string> lstCmdText = new List<string>();
            sb.Append("select system_16.*,s4_1.SYSTEM_4_40 as str40 ");
            sb.Append(" from system_16 ");
            sb.Append(" left join System_4 s4_1 on s4_1.SYSTEM_4_20=System_16_40 ");
            sb.Append(" where 1=1 ").Append(msq.strquery);
            if(msq.strorder != null && msq.strorder != "")
            {
				sb.Append(" order by ").Append(msq.strorder);
            }
            lstCmdText.Add(sb.ToString());
            sb.Remove(0, sb.ToString().Length);
            try
            {
                DataSet ds = DbHelperMySQL.Query(lstCmdText[0].ToString());
               if (ds != null && ds.Tables.Count != 0 && ds.Tables[0].Rows.Count != 0)
                {
                	foreach(DataRow dr in ds.Tables[0].Rows)
                	{
                    	Mssystem_16 ms = new Mssystem_16();
                    	if(dr["System_16_10"].ToString()!=""){ms.System_16_10=int.Parse(dr["System_16_10"].ToString());}
                    	if(dr["System_16_20"]!=null){ms.System_16_20=dr["System_16_20"].ToString();}
                    	if(dr["System_16_30"]!=null){ms.System_16_30=dr["System_16_30"].ToString();}
                    	if(dr["System_16_40"]!=null){ms.System_16_40=dr["System_16_40"].ToString(); }
                        if (dr["str40"] != null) { ms.str40 = dr["str40"].ToString(); }
                        if (dr["System_16_50"]!=null){ms.System_16_50=dr["System_16_50"].ToString();}
                    	if(dr["System_16_60"]!=null){ms.System_16_60=dr["System_16_60"].ToString();}
                    	if(dr["System_16_70"]!=null){ms.System_16_70=dr["System_16_70"].ToString();}
                    	if(dr["System_16_80"]!=null){ms.System_16_80=dr["System_16_80"].ToString();}
                    	if(dr["System_16_90"]!=null){ms.System_16_90=dr["System_16_90"].ToString();}
                    	if(dr["System_16_100"]!=null){ms.System_16_100=dr["System_16_100"].ToString();}
                    	if(dr["System_16_110"]!=null){ms.System_16_110=dr["System_16_110"].ToString();}
                    	if(dr["System_16_120"]!=null){ms.System_16_120=dr["System_16_120"].ToString();}
                    	if(dr["System_16_130"]!=null){ms.System_16_130=dr["System_16_130"].ToString();}
                    	if(dr["System_16_140"]!=null){ms.System_16_140=dr["System_16_140"].ToString();}
                    	if(dr["System_16_150"]!=null){ms.System_16_150=dr["System_16_150"].ToString();}
                    	if(dr["System_16_160"]!=null){ms.System_16_160=dr["System_16_160"].ToString();}
                    	if(dr["System_16_170"]!=null){ms.System_16_170=dr["System_16_170"].ToString();}
                    	if(dr["System_16_180"]!=null){ms.System_16_180=dr["System_16_180"].ToString();}
                    	if(dr["System_16_190"]!=null){ms.System_16_190=dr["System_16_190"].ToString();}
                    	if(dr["System_16_200"]!=null){ms.System_16_200=dr["System_16_200"].ToString();}
                    	if(dr["System_16_210"]!=null){ms.System_16_210=dr["System_16_210"].ToString();}
                    	if(dr["System_16_220"]!=null){ms.System_16_220=dr["System_16_220"].ToString();}
                    	if(dr["System_16_230"]!=null){ms.System_16_230=dr["System_16_230"].ToString();}
                    	listms.Add(ms);
                	}
                }
            }
            catch{}
            return listms;
        }

        /// <summary>
        ///  保存system_16信息
        /// </summary>
        /// <param name="ms">实体信息 通过System_16_10进行判断有System_16_10就是update</param>
        /// <returns>消息</returns>
        public MsReturned Savesystem_16(Mssystem_16 ms)
        {
            MsReturned msr = new MsReturned();
            if(ms.System_16_10 !=null && ms.System_16_10.ToString() !="" && ms.System_16_10.ToString() != "0")
            {
            	msr = Upsystem_16(ms);
            }
            else
            {
            	msr = Addsystem_16(ms);
            }
            return msr;
        }

        /// <summary>
        ///  新增system_16信息
        /// </summary>
        /// <param name="ms">实体信息 通过System_16_10进行判断有System_16_10就是update</param>
        /// <returns>消息</returns>
        public MsReturned Addsystem_16(Mssystem_16 ms)
        {
            List<string> lstResult = new List<string>();
            StringBuilder sb = new StringBuilder();
            List<string> lstCmdText = new List<string>();
            MsReturned msr = new MsReturned();
            int newRateId = DataBase.GetMaxId("system_16", "System_16_10");
            sb.Append("insert into system_16 (");
            sb.Append("System_16_10,System_16_20,System_16_30,System_16_40,System_16_50,");
            sb.Append("System_16_60,System_16_70,System_16_80,System_16_90,System_16_100,");
            sb.Append("System_16_110,System_16_120,System_16_130,System_16_140,System_16_150,");
            sb.Append("System_16_160,System_16_170,System_16_180,System_16_190,System_16_200,");
            sb.Append("System_16_210,System_16_220,System_16_230");
            sb.Append(")");
            sb.Append("values ( ");
            sb.Append(newRateId.ToString()).Append(",");
            sb.Append("@System_16_20,@System_16_30,@System_16_40,@System_16_50,");
            sb.Append("@System_16_60,@System_16_70,@System_16_80,@System_16_90,@System_16_100,");
            sb.Append("@System_16_110,@System_16_120,@System_16_130,@System_16_140,@System_16_150,");
            sb.Append("@System_16_160,@System_16_170,@System_16_180,@System_16_190,@System_16_200,");
            sb.Append("@System_16_210,@System_16_220,@System_16_230)");
            MySqlParameter[] parameters = {
            		new MySqlParameter("@System_16_10", MySqlDbType.Int32,11),
            		new MySqlParameter("@System_16_20", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_30", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_40", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_50", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_60", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_70", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_80", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_90", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_100", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_110", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_120", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_130", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_140", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_150", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_160", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_170", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_180", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_190", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_200", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_210", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_220", MySqlDbType.VarChar,100),
            		new MySqlParameter("@System_16_230", MySqlDbType.VarChar,100)};
            parameters[0].Value = ms.System_16_10;
            parameters[1].Value = ms.System_16_20;
            parameters[2].Value = ms.System_16_30;
            parameters[3].Value = ms.System_16_40;
            parameters[4].Value = ms.System_16_50;
            parameters[5].Value = ms.System_16_60;
            parameters[6].Value = ms.System_16_70;
            parameters[7].Value = ms.System_16_80;
            parameters[8].Value = ms.System_16_90;
            parameters[9].Value = ms.System_16_100;
            parameters[10].Value = ms.System_16_110;
            parameters[11].Value = ms.System_16_120;
            parameters[12].Value = ms.System_16_130;
            parameters[13].Value = ms.System_16_140;
            parameters[14].Value = ms.System_16_150;
            parameters[15].Value = ms.System_16_160;
            parameters[16].Value = ms.System_16_170;
            parameters[17].Value = ms.System_16_180;
            parameters[18].Value = ms.System_16_190;
            parameters[19].Value = ms.System_16_200;
            parameters[20].Value = ms.System_16_210;
            parameters[21].Value = ms.System_16_220;
            parameters[22].Value = ms.System_16_230;
            lstCmdText.Add(sb.ToString());
            sb.Remove(0, sb.ToString().Length);
            try
            {
                int iexe = DbHelperMySQL.ExecuteSql(lstCmdText[0].ToString(),parameters);
                if (iexe > 0)
                {
                    msr.strMsId = newRateId.ToString();
                    msr.strMS = "保存成功!";
                }
                else
                {
                    msr.strMsId = "-1";
                    msr.strMS = "操作失败:服务器忙,请稍后再试!";
                }
            }
            catch(Exception ex)
            {
                msr.strMsId = "-1";
                msr.strMS = "操作失败:服务器忙,请稍后再试!";
            }
            lstCmdText = null;
            sb = null;
            return msr;
        }

        /// <summary>
        ///  更新system_16信息
        /// </summary>
        /// <param name="ms">实体信息 通过System_16_10进行判断有System_16_10就是update</param>
        /// <returns>消息</returns>
        public MsReturned Upsystem_16(Mssystem_16 ms)
        {
            List<string> lstResult = new List<string>();
            StringBuilder sb = new StringBuilder();
            List<string> lstCmdText = new List<string>();
            MsReturned msr = new MsReturned();
           	sb.Append("update system_16 set ");
           	sb.Append(" System_16_10='").Append(ms.System_16_10).Append("' ");// System_16_10 
           	if (ms.System_16_20 !=null && ms.System_16_20.ToString() != ""){
           	    sb.Append(",").Append(" System_16_20='").Append(ms.System_16_20).Append("' ");// System_16_20 
           	}
           	if (ms.System_16_30 !=null && ms.System_16_30.ToString() != ""){
           	    sb.Append(",").Append(" System_16_30='").Append(ms.System_16_30).Append("' ");// System_16_30 
           	}
           	if (ms.System_16_40 !=null && ms.System_16_40.ToString() != ""){
           	    sb.Append(",").Append(" System_16_40='").Append(ms.System_16_40).Append("' ");// System_16_40 
           	}
           	if (ms.System_16_50 !=null && ms.System_16_50.ToString() != ""){
           	    sb.Append(",").Append(" System_16_50='").Append(ms.System_16_50).Append("' ");// System_16_50 
           	}
           	if (ms.System_16_60 !=null && ms.System_16_60.ToString() != ""){
           	    sb.Append(",").Append(" System_16_60='").Append(ms.System_16_60).Append("' ");// System_16_60 
           	}
           	if (ms.System_16_70 !=null && ms.System_16_70.ToString() != ""){
           	    sb.Append(",").Append(" System_16_70='").Append(ms.System_16_70).Append("' ");// System_16_70 
           	}
           	if (ms.System_16_80 !=null && ms.System_16_80.ToString() != ""){
           	    sb.Append(",").Append(" System_16_80='").Append(ms.System_16_80).Append("' ");// System_16_80 
           	}
           	if (ms.System_16_90 !=null && ms.System_16_90.ToString() != ""){
           	    sb.Append(",").Append(" System_16_90='").Append(ms.System_16_90).Append("' ");// System_16_90 
           	}
           	if (ms.System_16_100 !=null && ms.System_16_100.ToString() != ""){
           	    sb.Append(",").Append(" System_16_100='").Append(ms.System_16_100).Append("' ");// System_16_100 
           	}
           	if (ms.System_16_110 !=null && ms.System_16_110.ToString() != ""){
           	    sb.Append(",").Append(" System_16_110='").Append(ms.System_16_110).Append("' ");// System_16_110 
           	}
           	if (ms.System_16_120 !=null && ms.System_16_120.ToString() != ""){
           	    sb.Append(",").Append(" System_16_120='").Append(ms.System_16_120).Append("' ");// System_16_120 
           	}
           	if (ms.System_16_130 !=null && ms.System_16_130.ToString() != ""){
           	    sb.Append(",").Append(" System_16_130='").Append(ms.System_16_130).Append("' ");// System_16_130 
           	}
           	if (ms.System_16_140 !=null && ms.System_16_140.ToString() != ""){
           	    sb.Append(",").Append(" System_16_140='").Append(ms.System_16_140).Append("' ");// System_16_140 
           	}
           	if (ms.System_16_150 !=null && ms.System_16_150.ToString() != ""){
           	    sb.Append(",").Append(" System_16_150='").Append(ms.System_16_150).Append("' ");// System_16_150 
           	}
           	if (ms.System_16_160 !=null && ms.System_16_160.ToString() != ""){
           	    sb.Append(",").Append(" System_16_160='").Append(ms.System_16_160).Append("' ");// System_16_160 
           	}
           	if (ms.System_16_170 !=null && ms.System_16_170.ToString() != ""){
           	    sb.Append(",").Append(" System_16_170='").Append(ms.System_16_170).Append("' ");// System_16_170 
           	}
           	if (ms.System_16_180 !=null && ms.System_16_180.ToString() != ""){
           	    sb.Append(",").Append(" System_16_180='").Append(ms.System_16_180).Append("' ");// System_16_180 
           	}
           	if (ms.System_16_190 !=null && ms.System_16_190.ToString() != ""){
           	    sb.Append(",").Append(" System_16_190='").Append(ms.System_16_190).Append("' ");// System_16_190 
           	}
           	if (ms.System_16_200 !=null && ms.System_16_200.ToString() != ""){
           	    sb.Append(",").Append(" System_16_200='").Append(ms.System_16_200).Append("' ");// System_16_200 
           	}
           	if (ms.System_16_210 !=null && ms.System_16_210.ToString() != ""){
           	    sb.Append(",").Append(" System_16_210='").Append(ms.System_16_210).Append("' ");// System_16_210 
           	}
           	if (ms.System_16_220 !=null && ms.System_16_220.ToString() != ""){
           	    sb.Append(",").Append(" System_16_220='").Append(ms.System_16_220).Append("' ");// System_16_220 
           	}
           	if (ms.System_16_230 !=null && ms.System_16_230.ToString() != ""){
           	    sb.Append(",").Append(" System_16_230='").Append(ms.System_16_230).Append("' ");// System_16_230 
           	}
           	sb.Append(" where System_16_10='").Append(ms.System_16_10).Append("'");// System_16_10 
            lstCmdText.Add(sb.ToString());
            sb.Remove(0, sb.ToString().Length);
            try
            {
                int iexe = DbHelperMySQL.ExecuteSql(lstCmdText[0].ToString());
                if (iexe > 0)
                {
                    msr.strMsId = ms.System_16_10.ToString();
                    msr.strMS = "保存成功!";
                }
                else
                {
                    msr.strMsId = "-1";
                    msr.strMS = "操作失败:服务器忙,请稍后再试!";
                }
            }
            catch
            {
                msr.strMsId = "-1";
                msr.strMS = "操作失败:服务器忙,请稍后再试!";
            }
            lstCmdText = null;
            sb = null;
            return msr;
        }

        /// <summary>
        /// 得到数据类型
        /// </summary>
        /// <param name="msq">条件</param>
        /// <returns>数据类型</returns>
        public MsReturned Getsystem_16ByQuery(MsQuery msq)
        {
        	DataSet ds = null;
        	MsReturned msr = new MsReturned();
            StringBuilder sb = new StringBuilder();
            List<string> lstCmdText = new List<string>();
            sb.Append("select system_16.*,s4_1.SYSTEM_4_40 as str40 ");
            sb.Append(" from system_16 ");
            sb.Append(" left join System_4 s4_1 on s4_1.SYSTEM_4_20=System_16_40 ");
            sb.Append(" where 1=1 ").Append(msq.strquery);
            if(msq.strorder!=null && msq.strorder != "")
            {
				sb.Append(" order by ").Append(msq.strorder);
            }
            lstCmdText.Add(sb.ToString());
            sb.Remove(0, sb.ToString().Length);
            try
            {
                ds = DbHelperMySQL.Query(lstCmdText[0].ToString());
            }
            catch{}
            msr.data = ds;
            return msr;
        }

        /// <summary>
        /// 删除system_16
        /// </summary>
        /// <param name="msq">条件</param>
        /// <returns></returns>
        public MsReturned Deletesystem_16ByQuery(MsQuery msq)
        {
            StringBuilder sb = new StringBuilder();
            MsReturned msr = new MsReturned();
            sb.Append(" delete from system_16 where System_16_10 > 0 ").Append(msq.strquery);
            try
            {
                int iexe = DbHelperMySQL.ExecuteSql(sb.ToString());
                if (iexe > 0)
                {
                    msr.strMsId = "1";
                    msr.strMS = "保存成功!";
                }
                else
                {
                    msr.strMsId = "-1";
                    msr.strMS = "操作失败:服务器忙,请稍后再试!";
                }
            }
            catch
            {
                msr.strMsId = "-1";
                msr.strMS = "操作失败:服务器忙,请稍后再试!";
            }
            sb = null;
            return msr;
        }

    }
}
